Like the main gnome-shell process, the extensions service loads code from
extensions. It therefore makes sense to prevent GType name clashes there
as well, just like we already to in the gnome-shell process.
This may break some extensions that use the old type name in .ui files,
but they can be fixed easily by specifying an explicit GTypeName.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2024>
imports.gi.versions.Gdk = '4.0';
imports.gi.versions.Gtk = '4.0';
-const { Gtk } = imports.gi;
+const { GObject, Gtk } = imports.gi;
const pkg = imports.package;
const { DBusService } = imports.dbusService;
Gtk.init();
pkg.initFormat();
+ GObject.gtypeNameBasedOnJSPath = true;
+
const service = new DBusService(
'org.gnome.Shell.Extensions',
new ExtensionsService());